package com.its.pojo;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.time.LocalDateTime;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import lombok.experimental.Accessors;

/**
 * <p>
 * 报案表
 * </p>
 *
 * @author 朱厚强
 * @since 2023年12月23日
 */
@Getter
@Setter
@ToString
@Accessors(chain = true)
@TableName("bus_claim_report")
@ApiModel(value = "BusClaimReport对象", description = "报案表")
public class BusClaimReport implements Serializable {

    private static final long serialVersionUID = 1L;


    @ApiModelProperty("报案号")
    @TableId(value = "claim_report_id")
    private String claimReportId;

    @ApiModelProperty("保单号")
    @TableField("policy_number")
    private String policyNumber;

    @ApiModelProperty("联系人")
    @TableField("contact_person")
    private String contactPerson;

    @ApiModelProperty("联系电话")
    @TableField("contact_phone")
    private String contactPhone;

    @ApiModelProperty("报案出险原因")
    @TableField("cause_of_loss")
    private String causeOfLoss;

    @ApiModelProperty("省份")
    @TableField("province_id")
    private Integer provinceId;

    @ApiModelProperty("城市")
    @TableField("city_id")
    private Integer cityId;

    @ApiModelProperty("市区")
    @TableField("district_id")
    private Integer districtId;


    @ApiModelProperty("报案出险地址")
    @TableField("loss_address")
    private String lossAddress;

    @ApiModelProperty("报案方式 0现场报案 1电话报案 2app 3其他")
    @TableField("report_method")
    private Integer reportMethod;

    @ApiModelProperty("受损标的")
    @TableField("damaged_subject")
    private String damagedSubject;

    @ApiModelProperty("报损数量")
    @TableField("damage_quantity")
    private String damageQuantity;

    @ApiModelProperty("报案时间")
    @TableField("report_time")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") // 指定日期时间格式
    private LocalDateTime reportTime;

    @ApiModelProperty("出险时间")
    @TableField("loss_time")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") // 指定日期时间格式
    private LocalDateTime lossTime;

    @ApiModelProperty("受灾信息编号")
    @TableField("disaster_info_id")
    private Integer disasterInfoId;



    @ApiModelProperty("数据状态")
    @TableField("state")
    private Integer state;

    @ApiModelProperty("删除原因")
    @TableField("cancellation_reason")
    private String cancellationReason;

    @ApiModelProperty("作废操作员ID")
    @TableField("cancellation_id")
    private String cancellationId;

    @ApiModelProperty("指派状态 0未指派 1指派中 2已指派D")
    @TableField("flow_state")
    private Integer flowState;

    @ApiModelProperty("调度员id")
    @TableField("dispatch_id")
    private Integer dispatchId;
}
